﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.Text;

namespace AteneoLibriServices
{
    // NOTE: You can use the "Rename" command on the "Refactor" menu to change the interface name "IAteneoLibriService" in both code and config file together.
    [ServiceContract]
    public interface IAteneoLibriService
    {

        #region University
        [OperationContract]
        List<AteneoLibriEntityFramework.University> getUniversities();

        [OperationContract]
        AteneoLibriEntityFramework.University getUniversity(Guid universityId);
        #endregion

        #region Users
        [OperationContract]
        List<AteneoLibriEntityFramework.User> getUsers();

        [OperationContract]
        AteneoLibriEntityFramework.User getUserByEmailAndPsw(String email, String password);

        [OperationContract]
        List<AteneoLibriEntityFramework.User> getUsersByUniversityId(Guid universityId);
        #endregion

        #region Books
        //[OperationContract]
        //ObservableCollection<AteneoLibriEntityFramework.Book> getBooksByTitle(String title);

        //[OperationContract]
        //ObservableCollection<AteneoLibriEntityFramework.Book> getBooksByAuthors(String author);
        #endregion
    }
}
